#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    //设置标题栏隐藏
    this->setWindowFlag(Qt::FramelessWindowHint);
    //给btngroup设置m_parent
    ui->btn_group->setParent(this);

    //
    managerSignals();
}

MainWindow::~MainWindow()
{
    delete ui;
}
//处理来自btngroup的信号
void MainWindow::managerSignals()
{
    //关闭，最小化和最大化
    connect(ui->btn_group,&btngroup::closeWindow,this,&MainWindow::close);
    connect(ui->btn_group,&btngroup::minWindow,this,&MainWindow::showMinimized);
    connect(ui->btn_group,&btngroup::maxWindow,[=]()
    {
        //需要判断当前窗口状态
        static bool flag = false;
        if(!flag)
        {
            this->showMaximized();
            flag = true;
        }
        else
        {
            this->showNormal();
            flag = false;
        }
    });
    //对toobutton的信号进行处理，窗口间的切换
    connect(ui->btn_group,&btngroup::sigMyFile,[=]()
    {
        //将stack设置为“我的文件”
        ui->stackedWidget->setCurrentIndex(0);
    });
    connect(ui->btn_group,&btngroup::sigShareList,[=]()
    {
        //将stack设置为“分享文件”
        ui->stackedWidget->setCurrentIndex(1);
    });
    connect(ui->btn_group,&btngroup::sigDownload,[=]()
    {
        //将stack设置为“下载排行”
        ui->stackedWidget->setCurrentIndex(2);
    });
    connect(ui->btn_group,&btngroup::sigTransform,[=]()
    {
        //将stack设置为“传输”
        ui->stackedWidget->setCurrentIndex(3);
    });
    connect(ui->btn_group,&btngroup::sigSwitchUser,[=]()
    {
        //切换用户，退出登录返回到登录页发送信号
        emit changeUser();
    });
}
